Experiences with Teaching Object-Oriented Concepts to Introductory Programming Students Using C++
نویسندگان
چکیده
With the growth in popularity of the object-oriented paradigm, the Department of Software Development at Monash University decided, two years ago, to teach object-oriented programming to the introductory programming students. The first year programming subjects were completely restructured and rewritten. It was decided to introduce the objectoriented paradigm after the students have had one semester of procedural programming experience in C++. Teaching object oriented principles in C++ has presented many challenges. The students find the complicated language syntax difficult. They also show a reluctance to move from the procedural to the object-oriented paradigm. However, with support and advice from education experts we have successfully addressed these problems. Different teaching approaches and techniques have been used. Small discussion classes were introduced to provide a forum for the consolidation of ideas presented in lectures, away from the distraction of computers. Extra support was given to the students in the form of a special World Wide Web page and a help desk. A concurrent research project has enabled close monitoring of the effectiveness of our teaching programme. In spite of the difficulties we have faced, the student results for 1995 and 1996 show an improvement in student performance over previous
منابع مشابه
CS1: Getting Started
The Logo programming language implements a virtual drawing machine—the turtle machine. The turtle machine is well-known for giving students an intuitive understanding of fundamental procedural programming principles. In this paper we present our experiences with resurrecting the Logo turtle in a new object-oriented way and using it in an introductory object-oriented programming course. While, a...
متن کامل3D Animation of Java Program Execution for Teaching Object Oriented Concepts
The successful teaching of the object oriented programming paradigm has been identified as a difficult task. Coupled with the difficulty of conveying abstract concepts in general to students, is the complexity of the object oriented paradigm itself. A common approach to conveying complex abstract notions (such as algorithms or data structures) is the use of visualisations. This paper describes ...
متن کاملObject-oriented modeling of Object-Oriented Concepts A Case Study in Structuring an Educational Domain
Teaching introductory object-oriented programming presents considerable challenges. Some of these challenges are due to the intrinsic complexity of the subject matter — object-oriented concepts are tightly interrelated and appear in many combinations. The present work describes an approach to modeling educational domains and reports on the results for object-orientation. It analyzes the depende...
متن کاملPython for Teaching Introductory Programming: a Quantitative Evaluation
This paper compares two different approaches of teaching introductory programming by quantitatively analysing the student assessments in a real classroom. The first approach is to emphasise the principles of object-oriented programming and design using Java from the very beginning. The second approach is to first teach the basic programming concepts (loops, branch, and use of libraries) using P...
متن کاملBuilding Casual Games and APIs for Teaching Introductory Programming Concepts
We are building a series of custom casual games to support teaching and learning of introductory programming (CS1/2) concepts with a focus on ease of adoption. Our games are innovative twists on popular casual genres, and each game is designed explicitly for teaching specific programming concepts (e.g., conditionals, arrays). Based on these games, faculty can explain and students can explore CS...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1997